The most basic method of building software product deliverables is by using makefiles. A makefile is a build script written by the software developer which includes the rules for building the programs in the software product deliverable. As software products become larger and more complex, the makefile can become quite complicated and difficult to write and comprehend. It is also more difficult to share common rules and definitions with other builds for the same product or deliverable.
More advanced methods of building software product deliverables allow the developers to write a description file in a higher level format which is then used to generate the makefile. The description file also allows developers to refer to common rules defined in another file.
These existing methods to make software product deliverables have several disadvantages which are addressed and solved by the present invention.